home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / oper_sys / emerald / emrldsys.lha / Language / Compiler / Builtins / Makefile < prev    next >
Makefile  |  1990-08-30  |  4KB  |  182 lines

  1. #
  2. # %W%  %G%
  3. #
  4. ECFLAGS = 
  5. EMDIR=/scratch/eric/emerald/
  6.  
  7. .SUFFIXES:
  8. .SUFFIXES:    .g .m
  9.  
  10. REALSOURCES = \
  11.     AbstractType.m \
  12.     Any.m \
  13.     Array.m \
  14.     Boolean.m \
  15.     Character.m \
  16.     Condition.m \
  17.     Integer.m \
  18.     Nil.m \
  19.     NodeListElement.m \
  20.     NodeList.m \
  21.     Handler.m \
  22.     VectorOfChar.m \
  23.     Buffer.m \
  24.     OutStream.m \
  25.     InStream.m \
  26.     Node.m \
  27.     Real.m \
  28.     Signature.m \
  29.     RISC.m \
  30.     String.m \
  31.     Time.m \
  32.     Vector.m \
  33.     ImmutableVector.m \
  34.     Bitchunk.m
  35.  
  36. CRITICALSOURCES = \
  37.     AbstractType.m \
  38.     Any.m \
  39.     Boolean.m \
  40.     Character.m \
  41.     Condition.m \
  42.     Integer.m \
  43.     Nil.m \
  44.     NodeListElement.m \
  45.     NodeList.m \
  46.     Handler.m \
  47.     VectorOfChar.m \
  48.     Buffer.m \
  49.     OutStream.m \
  50.     InStream.m \
  51.     Node.m \
  52.     Real.m \
  53.     Signature.m \
  54.     RISC.m \
  55.     String.m \
  56.     Time.m \
  57.     Bitchunk.m
  58.  
  59. EXISTINGSOURCES = \
  60.     AbstractType.m \
  61.     Any.m \
  62.     Boolean.m \
  63.     Character.m \
  64.     Condition.m \
  65.     Integer.m \
  66.     Nil.m \
  67.     Handler.m \
  68.     NodeListElement.m \
  69.     Node.m \
  70.     Real.m \
  71.     Signature.m \
  72.     RISC.m \
  73.     Time.m \
  74.     Vector.m \
  75.     ImmutableVector.m \
  76.     Bitchunk.m
  77.  
  78. OTHERSOURCES = \
  79.     Array.m \
  80.     Vector.m \
  81.     ImmutableVector.m
  82.  
  83. PHONEY_SOURCES = \
  84.     phoney_Array.m \
  85.     phoney_InStream.m \
  86.     phoney_OutStream.m \
  87.     phoney_String.m \
  88.     phoney_Buffer.m \
  89.     phoney_VectorOfChar.m \
  90.     phoney_NodeList.m
  91.  
  92. REAL_SOURCES = \
  93.     real_Array.m \
  94.     real_InStream.m \
  95.     real_OutStream.m \
  96.     real_String.m \
  97.     real_Buffer.m \
  98.     real_VectorOfChar.m \
  99.     real_NodeList.m
  100.  
  101. realBuiltins.a:    ${EXISTINGSOURCES} ${PHONEY_SOURCES}
  102.     @rm -f OID*.t *.g *.*.[os]
  103.     @rm -f Array.m InStream.m OutStream.m String.m Buffer.m \
  104.         VectorOfChar.m NodeList.m
  105.     @cp phoney_Array.m Array.m ;
  106.     @copydate phoney_Array.m Array.m
  107.     @cp phoney_InStream.m InStream.m    ;
  108.     @copydate phoney_InStream.m InStream.m
  109.     @cp phoney_OutStream.m OutStream.m
  110.     @copydate phoney_OutStream.m OutStream.m
  111.     @cp phoney_String.m String.m
  112.     @copydate phoney_String.m String.m
  113.     @cp phoney_Buffer.m Buffer.m
  114.     @copydate phoney_Buffer.m Buffer.m
  115.     @cp phoney_VectorOfChar.m VectorOfChar.m
  116.     @copydate phoney_VectorOfChar.m VectorOfChar.m
  117.     @cp phoney_NodeList.m NodeList.m
  118.     @copydate phoney_NodeList.m NodeList.m
  119.     @chmod a-w Array.m InStream.m OutStream.m String.m Buffer.m \
  120.         VectorOfChar.m NodeList.m
  121.     @rm -f OID*.t 
  122.     @make -f MakeTree `echo ${REALSOURCES} | sed '/\.m/s//.g/g'`
  123.     @echo "Linking."
  124.     @ld -r -o realBuiltins.a OID*.t
  125.     @rm -f OID*.t
  126.  
  127. dotos:
  128.     @rm -f Array.m InStream.m OutStream.m String.m Buffer.m \
  129.         VectorOfChar.m NodeList.m
  130.     @cp real_Array.m Array.m
  131.     @copydate real_Array.m Array.m
  132.     @cp real_InStream.m InStream.m
  133.     @copydate real_InStream.m InStream.m
  134.     @cp real_OutStream.m OutStream.m
  135.     @copydate real_OutStream.m OutStream.m
  136.     @cp real_String.m String.m
  137.     @copydate real_String.m String.m
  138.     @cp real_Buffer.m Buffer.m
  139.     @copydate real_Buffer.m Buffer.m
  140.     @cp real_VectorOfChar.m VectorOfChar.m
  141.     @copydate real_VectorOfChar.m VectorOfChar.m
  142.     @cp real_NodeList.m NodeList.m
  143.     @copydate real_NodeList.m NodeList.m
  144.     @chmod a-w Array.m InStream.m OutStream.m String.m Buffer.m \
  145.         VectorOfChar.m NodeList.m
  146.     @rm -f OID*.t *.*.s *.*.o ${EMDIR}/Builtins/*
  147.     @make -f MakeDots `echo ${CRITICALSOURCES} | sed '/\.m/s//.g/g'`
  148.     @make -f MakeTree `echo ${OTHERSOURCES} | sed '/\.m/s//.g/g'`
  149.     @echo "Linking."
  150.     @ld -r -o realBuiltins.a OID*.t
  151.     @rm -f OID*.t
  152.     @cp *.*.o ${EMDIR}/Builtins
  153.     @rm *.g *.*.o *.*.s
  154.  
  155. forreal:    delete dotos
  156.  
  157. phoney:
  158.     @cc -c phoney.c
  159.     @mv -f phoney.o realBuiltins.a
  160.  
  161. delete:
  162.     -rm -f OID*.t *.g *.*.[os]
  163.     -if test -r realBuiltins.a ; then mv -f realBuiltins.a realBuiltins.a.bak ; fi
  164.  
  165. clean:
  166.     rm -f OID*.t *.bak .emacs_[0-9]* *.ckp *.[0-9]*.o *.[0-9]*.s core *.g \
  167.         Array.m InStream.m OutStream.m realBuiltins.a
  168.  
  169. backup:
  170.     @cp realBuiltins.a.bak realBuiltins.a
  171.     @copydate realBuiltins.a.bak realBuiltins.a
  172.  
  173. force:    delete realBuiltins.a
  174.  
  175. fromscratch:    delete
  176.     make phoney
  177.     cd .. ; make ec
  178.     make force
  179.     cd .. ; make ec
  180.     make forreal
  181.     cd .. ; make ec
  182.